@charset "utf-8";

/* ======================================================
 * home.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Layout
 * - Parts
 * - Clearfix
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * - Common
 * - Layout
 * - Parts
 * - Clearfix
 * SP Media Queries
 * Print
====================================================== */

/* ======================================================
 * PC
====================================================== */

@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Layout
  ------------------------------------------------------ */
  .container[data-wide="true"] {
    max-width: 100%;
    padding: 0;
  }
  body.is-inactive-search .assist-search {
    display: none !important;
  }
  .AssistClone .footer-assist .assist_buttons > li.type-search > a {
    opacity: 0;
  }
  
  /* ------------------------------------------------------
   * Parts
  ------------------------------------------------------ */
  /* ----- hoome-movie ----- */
  .home-movie {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    padding-top: 39.06%;
    background-image: url(../../under-files/img/home_movie_im01.jpg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    z-index: -1;
  }
  .home-movie video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }

  /* ----- home-contents ----- */
  .home-contents {
    position: relative;
    z-index: 1;
  }

  /* ----- home-layout ----- */
  .home-layout {
    position: relative;
    overflow: hidden;
  }
  .home-layout .home_search {
    position: absolute;
    bottom: 8%;
    left: 8.44%;
    z-index: 2;
    width: 62.5%;
    margin: 0 auto;
  }
  .home-layout .home_movie {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 39.06%;
  }
  .home-layout .home_movie video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .home-layout .home_flex_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    min-height: 100%;
    background-color: rgba(247,247,250,.8);
    transition: all .5s ease-out 0s;
  }
  .home-layout .home_flex_wrapper > .home_flex_outer {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home-layout .home_flex_wrapper > .home_flex_outer > .home_flex_inner {
    display: flex;
    width: 100%;
    min-height: 100%;
  }
  .home-layout .home_inner {
    width: 100%;
    padding: 2.08% 3.12% 0;
    box-sizing: border-box;
  }
  .home-layout .home_column,
  .home-layout .home_banner {
    display: flex;
    flex-wrap: wrap;
  }
  .home-layout .home_column {
    margin: 1.66% 0 0;
    transition: all .2s ease-out 0s;
  }
  .home-layout .home_banner {
    margin: 1.94% 0 0;
  }
  .home-layout .home_column > .column_item,
  .home-layout .home_banner > li {
    width: calc((100% - 1.38% * 4) / 5 - 0.1px); /* for IE Edge bug */
    margin: 0 0 0 1.38%;
  }
  .home-layout .home_column > .column_item:first-child,
  .home-layout .home_banner > li:first-child {
    margin-left: 0;
  }
  .home-layout .home_column_2 {
    display: flex;
    align-items: center;
  }
  .home-layout .home_column_2 > .column_heading {
    flex: 1;
  }
  .home-layout .home_column_2 > .column_button {
    white-space: nowrap;
  }
  .home-layout .home_column_3 > .column_item + .column_item {
    margin: 5.88% 0 0;
  }
  .home-layout .home_frame,
  .home-layout .home_banner > li {
    background-color: #fff;
  }
  .home-layout .home_heading {
    font-size: 2.5rem;
    line-height: 1.1;
  }
  .home-layout .home_heading_2 {
    padding: 2.94% 8.82%;
    font-size: 2.1rem;
    line-height: 1.1;
  }
  .home-layout .home_heading_2 .heading_subtitle {
    display: block;
    margin: 0 0 5px;
    font-size: 1.2rem;
  }
  .home-layout .home_link {
    display: block;
    text-decoration: none;
  }
  .home-layout .home_link:hover,
  .home-layout .home_banner > li > a:hover {
    opacity: .8;
  }
  .home-layout .home_button > li > a {
    overflow: hidden;
    display: block;
    text-align: left;
    text-indent: -9999em;
    outline: none;
  }
  .home-layout .home_button > li.type-open {
    position: absolute;
    top: 50%;
    right: 100%;
    margin-top: -25px;
  }
  .home-layout .home_button > li.type-open > a {
    position: relative;
    width: 22px;
    height: 50px;
  }
  .home-layout .home_button > li.type-open > a::before,
  .home-layout .home_button > li.type-open > a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
  }
  .home-layout .home_button > li.type-open > a::before {
    width: 50px;
    height: 50px;
    margin-top: -25px;
    background-color: rgba(247,247,250,.8);
    border-radius: 50%;
  }
  .home-layout .home_button > li.type-open > a::after {
    width: 0;
    height: 0;
    margin-top: -8px;
    margin-left: 10px;
    border-style: solid;
    border-width: 8px 12px 8px 0;
    border-color: transparent #e60013 transparent transparent;
  }
  .home-layout .home_button > li.type-close > a {
    position: relative;
    width: 30px;
    height: 30px;
  }
  .home-layout .home_button > li.type-close > a::before,
  .home-layout .home_button > li.type-close > a::after {
    content: "";
    position: absolute;
    top: 15px;
    left: -5px;
    width: 42px;
    height: 1px;
    background-color: #666;
  }
  .home-layout .home_button > li.type-close > a::before {
    transform: rotate(45deg);
  }
  .home-layout .home_button > li.type-close > a::after {
    transform: rotate(-45deg);
  }
  .home-layout .home_button_2 {
    overflow: hidden;
    position: absolute;
    bottom: 0;
    right: 100%;
    padding: 0;
    width: 15px;
    height: 20px;
    margin: 0 20px 20px 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 0 0;
    border: none;
    text-align: left;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    appearance: none;
  }
  .home-layout .home_button_2.type-pause {
    background-image: url(../../under-files/img/home_movie_bt02.png);
  }
  .home-layout .home_button_2.type-play {
    background-image: url(../../under-files/img/home_movie_bt01.png);
  }
  .home-layout .is-close {
   /* left: 100%;*/
    width: 16.66%;
    /*margin-left: -16.66%;*/
  }
   .home-layout .is-close .home_inner {
    padding: 9.37% 9.37% 0;
  }
   .home-layout .is-close .home_heading {
    display: none;
  }
  .home-layout .is-close .home_heading_2 {
    padding: 7.69% 7.76% 15.38%;
  }
  .home-layout .is-close .home_button > li.type-close {
    display: none;
  }
  .home-layout .is-close .home_column {
    margin-top: 0;
  }
  .home-layout .is-close .home_column_3 > .column_item + .column_item {
    margin-top: 11.53%;
  }
  .home-layout .is-close .home_banner {
    opacity: 0;
    display: block;
    margin-top: 17.3%;
  }
  .home-layout .is-close .home_banner.is-loaded {
    opacity: 1;
  }
  .home-layout .is-close .home_banner > li {
    width: 100%;
  }
  .home-layout .is-close .home_banner > li:nth-child(n+2) {
    display: none;
  }
  /* for Edge */
  @supports (-ms-ime-align: auto) {
    .home-layout .is-close .home_button > li.type-open {
      margin-right: -.5px;
    }
  }  
  .home-layout .is-close .home_column {
    opacity: 0;
  }
  .home-layout .slick-initialized {
     opacity: 1 !important;
  }
   .home-layout .slick-slider {
     padding-bottom: 15.38%;
  }
  .home-layout .slick-slider .slick-arrow,
  .home-layout .slick-slider .slick-dots > li > button {
    padding: 0;
    background-color: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    appearance: none;
  }
  .home-layout .slick-slider .slick-arrow {
    overflow: hidden;
    position: absolute;
    bottom: 0;
    width: 7px;
    height: 13px;
    text-align: left;
    text-indent: -9999em;
    z-index: 2;
  }
   .home-layout .slick-slider .slick-arrow::before {
    content: "";
    position: absolute;
    top: 1px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #666;
    border-right: 1px solid #666;
  }
  .home-layout .slick-slider .slick-arrow.slick-prev {
     left: 0;
  }
  .home-layout .slick-slider .slick-arrow.slick-prev::before {
    left: 2px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .home-layout .slick-slider .slick-arrow.slick-next {
     right: 0;
  }
  .home-layout .slick-slider .slick-arrow.slick-next::before {
    right: 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout .slick-slider .slick-dots,
  .home-layout .slick-slider .slick-dots > li,
  .home-layout .slick-slider .slick-dots > li > button {
    font-size: 0;
  }
  .home-layout .slick-slider .slick-dots {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
   .home-layout .slick-slider .slick-dots > li {
    margin: 0 5.76%;
  }
   .home-layout .slick-slider .slick-dots > li:first-child {
    margin-left: 0;
  }
   .home-layout .slick-slider .slick-dots > li:last-child {
    margin-right: 0;
  }
   .home-layout .slick-slider .slick-dots > li > button {
    overflow: hidden;
    width: 10px;
    height: 10px;
    background-color: #ccc;
    border-radius: 50%;
    text-align: left;
    text-indent: -9999em;
  }
  .home-layout .slick-slider .slick-dots > li.slick-active > button {
    background-color: #e60012;
  }
  /* v2 */
  .home-layout-v2 {
    background-color: #ffffff;
  }
  .home-layout-v2 .home_inner {
    padding: 45px 60px;
  }
  .home-layout-v2 .home_inner > *:first-child {
    margin-top: 0;
  }
  .home-layout-v2 .home_column {
    display: flex;
    margin: 40px 0 0;
  }
  .home-layout-v2 .home_column > .column_heading {
    white-space: nowrap;
  }
  .home-layout-v2 .home_column > .column_news {
    position: relative;
    flex: 1;
    margin: 0 0 0 30px;
    padding: 0 0 0 30px;
  }
  .home-layout-v2 .home_column > .column_news::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 20px;
    margin-top: -10px;
    background-color: #ccc;
  }
  .home-layout-v2 .home_column_2 {
    display: flex;
    margin: 40px 0 0;
    padding: 0 0 15px;
    border-bottom: 1px solid #999;
  }
  .home-layout-v2 .home_column_2 > .column_heading {
    white-space: nowrap;
  }
  .home-layout-v2 .home_column_2 > .column_news {
    flex: 1;
    padding: 0 0 0 30px;
  }
  .home-layout-v2 .home_heading {
    font-size: 2.2rem;
    line-height: 1.1;
  }
  .home-layout-v2 .home_heading a:after {
    content: "";
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v2 .home_heading_2 {
    position: relative;
    padding: 0 0 0 60px;
    color: #000;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .home-layout-v2 .home_heading_2::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    background-image: url(../../under-files/img/home_important_ic01.png);
    background-repeat: no-repeat;
    background-position: 0 0;
  }
  .home-layout-v2 .home_news .news_detail {
    display: flex;
    align-items: center;
  }
  .home-layout-v2 .home_news .news_detail > .news_data {
    font-size: 1.7rem;
    font-weight: normal;
    white-space: nowrap;
  }
  .home-layout-v2 .home_news .news_detail > .news_title {
    flex: 1;
    padding: 0 0 0 20px;
    font-size: 2.0rem;
  }
  .home-layout-v2 .home_news a[class*="a-"] .news_detail > .news_title::after {
    content: "";
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    display: inline-block;
    background-image: url(../img/cmn_sprite_ic01.png);
    background-repeat: no-repeat;
    vertical-align: middle;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .home-layout-v2 .home_news a.a-blank .news_detail > .news_title::after {
    width: 12px;
    height: 10px;
    background-position: 0px -80px;
  }
  .home-layout-v2 .home_news a.a-pdf .news_detail > .news_title::after {
    width: 15px;
    height: 15px;
    background-position: 0px -120px;
  }
  .home-layout-v2 .home_news_2 a {
    color: #000;
  }
  .home-layout-v2 .home_news_2 .news_detail {
    display: flex;
    align-items: center;
    font-weight: 700;
  }
  .home-layout-v2 .home_news_2 .news_detail > .news_data {
    width: 9.5em;
    font-size: 1.7rem;
    white-space: nowrap;
  }
  .home-layout-v2 .home_news_2 .news_detail > .news_title {
    flex: 1;
    font-size: 2.0rem;
  }
  .home-layout-v2 .home_news_2 a[class*="a-"] .news_detail > .news_title::after {
    content: "";
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    display: inline-block;
    background-image: url(../img/cmn_sprite_ic01.png);
    background-repeat: no-repeat;
    vertical-align: middle;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .home-layout-v2 .home_news_2 a.a-blank .news_detail > .news_title::after {
    width: 12px;
    height: 10px;
    background-position: 0px -80px;
  }
  .home-layout-v2 .home_news_2 a.a-pdf .news_detail > .news_title::after {
    width: 15px;
    height: 15px;
    background-position: 0px -120px;
  }
  .home-layout-v2 .home_frame {
    padding: 25px 30px;
    background-color: #fff7f8;
    color: #000;
    font-size: 2.0rem;
    font-weight: 700;
  }
  /* v3 */
  .home-layout-v3 {
    background-color: #f7f7fa;
    border-top: 1px solid #ccc;
  }
  .home-layout-v3 .home_inner {
    padding: 50px 60px 60px;
    border-top: 1px solid #e1e1e3;
  }
  .home-layout-v3 .home_heading {
    font-size: 5.0rem;
    line-height: 1.1;
    text-align: center;
    font-weight: 100;
  }
  .home-layout-v3 .home_frame {
    margin: 80px 0 0;
    padding: 35px 60px;
    background-color: #fff;
  }
  .home-layout-v3 .home_navi {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .home-layout-v3 .home_navi > li {
    width: calc((100% - 30px * 4) / 5);
    margin: 30px 0 0 30px;
  }
  .home-layout-v3 .home_navi > li:nth-child(-n+5) {
    margin-top: 0;
  }
  .home-layout-v3 .home_navi > li:nth-child(5n+1) {
    margin-left: 0;
  }
  .home-layout-v3 .home_navi > li > .navi_link {
    display: flex;
    align-items: center;
    flex-direction: column;
    text-decoration: none;
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_icon {
    white-space: nowrap;
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_label {
    flex: 1;
    padding: 0 0 0 20px;
    font-size: 2.2rem;
  }
  .home-layout-v3 .home_navi > li > a.navi_link > .navi_label::after {
    content: "";
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v3 .home_button {
    margin: 40px 0 0;
  }
  .home-layout-v3 .home_button > li > a {
    min-width: 46.66%;
    padding: 20px;
    background-color: #666;
    font-size: 2.2rem;
  }
  .home-layout-v3 .home_button > li > a:hover {
    background-color: #555;
  }
  /* v4 */
  .home-layout-v4 .home_heading {
    padding: 100px 60px;
    background-color: rgba(30,36,49,.3);
    color: #fff;
    font-size: 6.0rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v4 .home_column {
    display: flex;
  }
  .home-layout-v4 .home_column > [class*="column_item"] {
    position: relative;
    width: 50%;
    background-color: #ffffff;
    overflow: hidden;
  }
  .home-layout-v4 .home_frame {
    position: relative;
  }
  .home-layout-v4 .home_frame_2 {
    position: relative;
    margin: 3.5% 0 0;
    padding: 3.5% 0 0;
  }
  .home-layout-v4 .home_frame_2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 13.15%;
    height: 1px;
    background-color: #6f6f6f;
  }
  .home-layout-v4 .home_frame_3 {
    background-color: #343434;
    transition: all .2s ease-out 0s;
    z-index: -1;
    opacity: 0;
  }
  .home-layout-v4 .home_column > [class*="column_item"] > .home_frame > [class*="home_frame"].is-active + .home_frame_3 {
    opacity: 1.0;
    z-index: 2;
  }
  .home-layout-v4 .home_frame_4 {
    position: relative;
    display: block;
    cursor: pointer;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    overflow: hidden;
  }
  .home-layout-v4 .home_frame_4::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 0px solid #fff;
    -webkit-transition-property: border-width;
    transition-property: border-width;
    -webkit-transition-duration: 0.1s;
    transition-duration: 0.1s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    content: "";
  }
  .home-layout-v4 .home_frame_4:hover::before {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    border-width: 5px;
  }
  .home-layout-v4 .home_link {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    margin: -5px -6.57% 0 0;
  }
  .home-layout-v4 .home_link > li {
    margin: 5px 6.57% 0 0;
  }
  .home-layout-v4 .home_link > li:last-child {
    margin-right: 0;
  }
  .home-layout-v4 .home_link > li > a {
    color: #fff;
    font-size: 1.8rem;
  }
  .home-layout-v4 .home_link > li > a::after {
    content: "";
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v4 .home_flex_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close {
    position: absolute;
    top: 4%;
    right: 2%;
    display: block;
    text-indent: -9999em;
    width: 30px;
    height: 30px;
    z-index: 2;
    cursor: pointer;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close:hover {
    opacity: .7;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before,
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    position: absolute;
    top: 14px;
    right: -5px;
    width: 41px;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v4 .home_flex_wrapper > .home_flex_outer {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home-layout-v4 .home_flex_wrapper > .home_flex_outer > .home_flex_inner {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100%;
  }
  .home-layout-v4 .home_inner_2 {
    width: 100%;
    color: #ffffff;
    box-sizing: border-box;
    padding: 0 7%;
  }
  .home-layout-v4 .home_title {
    font-size: 2.8rem;
    line-height: 1.1;
    text-align: center;
    font-weight: 300;
  }
  .home-layout-v4 .home_title_2 {
    margin-bottom: .5em;
    font-size: 2.2rem;
    font-weight: bold;
  }
  .home-layout-v4 .home_text {
    margin: .8em 0 0;
    font-size: 1.8rem;
    line-height: 1.25;
    text-align: center;
  }
  .home-layout-v4 .home_text_2 {
    font-size: 2.2rem;
  }
  .home-layout-v4 .home_image img {
    width: 100%;
  }
  /* v5 */
  .home-layout-v5 {
    background-color: rgba(30,36,49,.3);
  }
  .home-layout-v5 .home_inner {
    padding: 0 0 250px;
  }
  .home-layout-v5 .home_inner_2 {
    width: 100%;
    padding: 0 9.37%;
    box-sizing: border-box;
  }
  .home-layout-v5 .home_heading {
    padding: 120px 60px 80px;
    background-color: #ffffff;
    font-size: 6.0rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v5 .home_heading_2 {
    font-size: 2.4rem;
  }
  .home-layout-v5 .home_heading_2_v2 {
    font-size: 2.4rem;
    text-shadow: 1px 1px 1px #ccc;
  }
  .home-layout-v5 .home_heading_3 {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    line-height: 1.1;
  }
  .home-layout-v5 .home_heading_3 .heading_title {
    font-size: 2.2rem;
  }
  .home-layout-v5 .home_heading_3 .heading_date {
    padding: 0 0 0 1.5em;
    font-size: 1.6rem;
  }
  .home-layout-v5 .home_column {
    display: flex;
  }
  .home-layout-v5 .home_column > .column_button {
    width: calc(100% / 3);
    background-color: #fff;
  }
  [data-browser="ie11"] .home-layout-v5 .home_column > .column_button,
  [data-browser="edge"] .home-layout-v5 .home_column > .column_button {
    width: calc((100% / 3) - 0.1px);
  }
  .home-layout-v5 .home_column_2 {
    position: relative;
  }
  .home-layout-v5 .home_flex_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
  }
  .home-layout-v5 .home_flex_wrapper > .home_flex_outer {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home-layout-v5 .home_flex_wrapper > .home_flex_outer > .home_flex_inner {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100%;
  }
  .home-layout-v5 .home_link {
    position: relative;
    display: block;
  }
  .home-layout-v5 .home_link::before {
    content: "";
    position: absolute;
    right: 15px;
    bottom: 15px;
    width: 23px;
    height: 23px;
    border-top: 2px solid #e60012;
    border-right: 2px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    z-index: 2;
  }
  .home-layout-v5 .type-about .home_link {
    color: #fff;
  }
  .home-layout-v5 .type-ir .home_link {
    color: #333;
  }
  .home-layout-v5 .stockprice_image {
    margin-top: 4%;
  }
  .home-layout-v5 .home_link_2 {
    margin: 4% 0 0;
  }
  .home-layout-v5 .home_text {
    font-size: 1.6rem;
  }
  .home-layout-v5 .home_text_2 {
    margin: 4% 0 0;
  }
  .home-layout-v5 .home_text_2 > dl {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    line-height: 1.1;
  }
  .home-layout-v5 .home_text_2 > dl > dt::after {
    content: "：";
  }
  .home-layout-v5 .home_text_2 > dl.type-recent > dd {
    font-size: 4.8rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd {
    font-size: 1.7rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd > span {
    color: #e60012;
    font-size: 2.6rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd > span > em {
    font-size: 4.8rem;
    font-style: normal;
  }
  .home-layout-v5 .home_image img {
    width: 100%;
    transition: all .2s ease-out 0s;
  }
  .home-layout-v5 .home_link:hover .column_image img {
    opacity: .7;
  }
  /* v6 */
  .home-layout-v6 {
    background-color: #f7f7fa;
  }
  .home-layout-v6 .home_inner {
    padding: 50px 60px 0px;
  }
  .home-layout-v6 .home_inner_2 {
    position: relative;
    padding: 0 79px 25px;
  }
  .home-layout-v6 .home_heading {
    font-size: 6.0rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v6 .home_tab {
    max-width: 1200px;
    margin: 70px auto 0;
  }
  .home-layout-v6 .home_tab .tab_list {
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
  .home-layout-v6 .home_tab .tab_list > li {
    width: calc((100% - 30px * 2) / 3);
  }
  .home-layout-v6 .home_tab .tab_list > li + li {
    margin-left: 30px;
  }
  .home-layout-v6 .home_tab .tab_list > li > a {
    display: block;
    padding: 0 0 20px;
    border-bottom: 2px solid #666666;
    color: #333;
    font-size: 2.2rem;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout-v6 .home_tab .tab_list > li.is-current > a {
    color: #e60012;
    font-weight: 700;
    border-bottom-color: #e60012;
  }
  .home-layout-v6 .home_column {
    margin: 50px 0 0;
  }
  .home-layout-v6 .home_column > .column_item {
    float: left;
    width: calc((100% - 10px * 4) / 5);
    margin: 10px 0 0 10px;
  }
  .home-layout-v6 .home_column > .column_item:nth-child(-n+5) {
    margin-top: 0;
  }
  .home-layout-v6 .home_column > .column_item:nth-child(5n+1) {
    margin-left: 0;
  }
  .home-layout-v6 .home_column_2 {
    margin: 15px 0 0;
  }
  .home-layout-v6 .home_frame {
    display: block;
    padding: 25px 15px 35px;
    background-color: #fff;
  }
  .home-layout-v6 a.home_frame {
    position: relative;
    color: #333;
    text-decoration: none;
  }
  .home-layout-v6 a.home_frame::before {
    content: "";
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v6 a.home_frame[class*="a-"]::before {
    border: none;
    background-image: url(../img/cmn_sprite_ic01.png);
    background-repeat: no-repeat;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .home-layout-v6 a.home_frame.a-blank::before {
    width: 12px;
    height: 10px;
    background-position: 0px -80px;
  }
  .home-layout-v6 a.home_frame.a-pdf::before {
    width: 15px;
    height: 15px;
    background-position: 0px -120px;
  }
  .home-layout-v6 a.home_frame:hover {
    box-shadow: 0 5px 10px 0 rgba(0,0,0,.2);
  }
  .home-layout-v6 .home_button {
    margin: 30px 0 0;
  }
  .home-layout-v6 .home_button > li > a {
    min-width: 46.66%;
    padding: 20px;
    background-color: #666;
    font-size: 2.2rem;
  }
  .home-layout-v6 .home_button > li > a:hover {
    background-color: #555;
  }
  .home-layout-v6 .home_text {
    font-size: 1.7rem;
  }
  .home-layout-v6 .home_text_2 {
    margin: 15px 0 0;
    font-size: 1.7rem;
  }
  .home-layout-v6 a.home_frame:hover .home_text_v2 {
    text-decoration: underline;
  }
  .home-layout-v6 .home_text_3 {
    text-align: center;
  }
  .home-layout-v6 .home_image {
    text-align: center;
  }
  .home-layout-v6 .home_image img {
    width: 100%;
    margin: 0 auto;
  }
  .home-layout-v6 .home_column.slick-initialized {
    margin-right: -5px;
    margin-left: -5px;
  }
  .home-layout-v6 .home_column.slick-initialized .home_frame {
    margin: 0 5px;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-list {
    margin: 0 -5px;
    padding: 0 5px 15px;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-arrow {
    overflow: hidden;
    position: absolute;
    top: 50%;
    margin-top: -30px;
    padding: 0;
    width: 32px;
    height: 60px;
    background-color: transparent;
    border: none;
    text-align: left;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    appearance: none;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-arrow::before {
    content: "";
    position: absolute;
    top: 8px;
    width: 44px;
    height: 44px;
    border-top: 2px solid #666;
    border-right: 2px solid #666;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-arrow.slick-prev {
    left: -75px;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-arrow.slick-prev::before {
    left: 9px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .home-layout-v6 .home_column.slick-initialized .slick-arrow.slick-next {
    right: -75px;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-arrow.slick-next::before {
    right: 9px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v6 .home_column.slick-initialized .slick-dots,
  .home-layout-v6 .home_column.slick-initialized .slick-dots > li,
  .home-layout-v6 .home_column.slick-initialized .slick-dots > li > button {
    font-size: 0;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-dots {
    position: absolute;
    bottom: -25px;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-dots > li {
    margin: 0 15px;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-dots > li > button {
    overflow: hidden;
    width: 10px;
    height: 10px;
    padding: 0;
    background-color: #ccc;
    border: none;
    border-radius: 50%;
    text-align: left;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    appearance: none;
  }
  .home-layout-v6 .home_column.slick-initialized .slick-dots > li.slick-active > button {
    background-color: #e60012;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after,
  .home-layout-v6 .home_column::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * PC Media Queries
====================================================== */
@media screen and (min-width: 1921px) {
}
@media screen and (min-width: 768px) and (max-width: 1920px) {
}
@media screen and (min-width: 768px) and (max-width: 1536px) {
  .home-layout .home_column {
    margin-top: 1.06%;
  }
  .home-layout .home_banner {
    margin-top: 1.41%;
  }
  .home-layout .home_heading_2 .heading_subtitle {
    font-size: 1.0rem;
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_label {
    font-size: 2.4rem;
    margin-bottom: 15px;
  }
  .home-layout-v3 .home_navi > li > .navi_link > p{
    text-align: center; 
  }
  .home-layout-v4 .home_title_2 {
    font-size: 2.0rem;
  }
  .home-layout-v4 .home_text_2 {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  .home-layout .home_heading_2 {
    font-size: 1.6rem;
  }
  .home-layout .home_heading_2 .heading_subtitle {
    font-size: .8rem;
  }
  .home-layout-v3 .home_navi > li {
    width: calc((100% - 20px * 2) / 3);
    margin: 20px 0 0 20px !important;
  }
  /* for IE11 */
  [data-browser="ie11"] .home-layout-v3 .home_navi > li {
    width: calc(((100% - 20px * 2) / 3) - 0.1px);
  }
  /* for Edge */
  [data-browser="edge"] .home-layout-v3 .home_navi > li {
    width: calc(((100% - 20px * 2) / 3) - 0.1px);
  }
  .home-layout-v3 .home_navi > li:nth-child(-n+3) {
    margin-top: 0 !important;
  }
  .home-layout-v3 .home_navi > li:nth-child(3n+1) {
    margin-left: 0 !important;
  }
  .home-layout-v5 .stockprice_image img {
    width: 70%;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1536px) {
  .home-layout .is-close .home_banner {
    margin-top: 11.58%;
  }
}
@media screen and (min-width: 1201px) and (max-width: 1280px) {
  .home-layout .home_heading_2 {
    font-size: 1.8rem;
  }
  .home-layout .is-close .home_banner {
    margin-top: 11.58%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  .home-layout .is-close .home_heading_2 .heading_subtitle {
    font-size: .9rem;
  }
  .home-layout-v4 .home_title_2 {
    font-size: 1.8rem;
  }
  .home-layout-v4 .home_text_2 {
    font-size: 1.8rem;
  }
  .home-layout-v4 .home_link > li > a {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  /* ----- home-layout ----- */
  .home-layout .slick-slider .slick-dots > li {
    margin-right: 4%;
    margin-left: 4%;
  }
   .home-layout .slick-slider {
     padding-bottom: 20%;
  }

  .home-layout .home_inner {
    padding-top: 1.7%;
  }
  .home-layout .home_column {
    margin-top: 1.36%;
  }
  .home-layout .home_banner {
    margin-top: 1.82%;
  }
  .home-layout .home_heading {
    font-size: 2.0rem;
    line-height: 1.1;
  }
  .home-layout .home_heading_2 {
    padding-right: 5.82%;
    padding-left: 5.82%;
  }
  .home-layout .home_heading_2 .heading_subtitle {
    margin-bottom: 1px;
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_label {
    font-size: 2.0rem;
  }
  .home-layout-v4 .home_text_2 {
    font-size: 1.6rem;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close {
    width: 25px;
    height: 25px;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before,
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    top: 12px;
    right: -3px;
    width: 31px;
  }
  .home-layout-v5 .home_heading_3 {
    justify-content: space-between;
  }
  .home-layout-v5 .home_text_2 > dl.type-recent > dd {
    font-size: 3.6rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd > span {
    font-size: 2.0rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd > span > em {
    font-size: 3.6rem;
    font-style: normal;
  }
}
@media screen and (min-width: 768px) and (max-width: 1112px) {
}
@media screen and (min-width: 768px) and (max-width: 1080px) {
  .home-layout-v3 .home_navi > li > .navi_link > .navi_icon img {
    width: 75px;
    height: 75px;
  }
  .home-layout-v4 .home_link > li > a {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .home-layout-v4 .home_inner_2 {
    padding: 0 8%;
  }
}
@media screen and (min-width: 768px) and (max-width: 960px) {
  .home-layout .slick-slider .slick-dots > li {
    margin-right: 3%;
    margin-left: 3%;
  }
   .home-layout .slick-slider {
     padding-bottom: 20%;
  }
  .home-layout-v2 .home_inner {
    padding: 40px;
  }
  .home-layout-v3 .home_inner {
    padding: 75px 40px 80px;
  }
  .home-layout-v3 .home_frame {
    margin-top: 60px;
    padding: 30px;
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_label {
    padding-left: 15px;
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_icon img {
    width: 60px;
    height: 60px;
  }
  .home-layout-v4 .home_heading {
    padding: 75px 40px;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close {
    width: 20px;
    height: 20px;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before,
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    top: 10px;
    right: -2px;
    width: 26px;
  }
  .home-layout-v5 .home_heading {
    padding: 80px 40px 60px;
  }
  .home-layout-v5 .home_inner {
    padding: 0 0 160px;
  }
  .home-layout-v6 .home_inner {
    padding: 80px 40px 170px;
  }
}
@media screen and (min-width: 768px) and (max-width: 896px) {
}
@media screen and (min-width: 768px) and (max-width: 834px) {
  .home-layout-v3 .home_navi > li > .navi_link > .navi_icon img {
    width: 50px;
    height: 50px;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close {
    width: 16px;
    height: 16px;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before,
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    top: 8px;
    right: -1px;
    width: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 812px) {
}


/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Layout
  ------------------------------------------------------ */
  .container[data-wide="true"] {
    padding-bottom: 0;
  }
  .AssistClone .footer-assist .assist_buttons > li.type-search > a {
    opacity: 0;
  }
  
  /* ------------------------------------------------------
   * Parts
  ------------------------------------------------------ */
  /* ----- hoome-movie ----- */
  .home-movie {
    height: 0;
    margin: 0 -15px;
    padding-top: 56.26%;
    background-image: url(../../under-files/img/home_movie_im01-r2x.jpg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
  }
  .home-movie video {
    display: none;
  }

  /* ----- home-layout ----- */
  .home-layout {
    margin: 20px 0 0;
  }
  .home-layout .home_search {
    position: relative;
    top: -35px;
    margin-top: -51px;
  }
  .home-layout .home_search .search-box .search_form {
    border-color: #fff;
  }
  .home-layout .home_movie video {
    display: none;
  }
  .home-layout .home_column_2 {
    display: none;
  }
  .home-layout .home_column_3 {
    display: flex;
    justify-content: space-between;
  }
  .home-layout .home_column_3 > .column_item {
    width: calc((100% - 15px) / 2);
    background-color: #fff;
  }
  .home-layout .home_heading_2 {
    padding: 10px 0;
    font-size: 1.5rem;
    line-height: 1.1;
  }
  .home-layout .home_heading_2 .heading_subtitle {
    display: block;
    margin: 0 0 5px;
    font-size: 1.0rem;
  }
  .home-layout .home_link {
    display: block;
    text-decoration: none;
  }
  .home-layout .home_banner {
    margin: 20px 0 0;
    padding: 0 35px;
    font-size: 0;
  }
  .home-layout .home_banner .slick-list {
    padding-top: 3px;
  }
  .home-layout .home_banner .slick-slide img {
    position: relative;
    top: -1px;
  }
  .home-layout .home_banner > li + li {
    margin: 10px 0 0;
  }
  
  .home-layout .home_column {
    opacity: 0;
    transition: all .2s ease-out 0s;
  }
  .home-layout .slick-initialized {
     opacity: 1 !important;
  }
  .home-layout .slick-slider .slick-arrow,
  .home-layout .slick-slider .slick-dots > li > button {
    padding: 0;
    background-color: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    appearance: none;
  }
  .home-layout .slick-slider .slick-arrow {
    overflow: hidden;
    position: absolute;
    bottom: 0;
    width: 10px;
    height: 20px;
    text-align: left;
    text-indent: -9999em;
    z-index: 2;
  }
   .home-layout .slick-slider .slick-arrow::before {
    content: "";
    position: absolute;
    top: 3px;
    width: 14px;
    height: 14px;
    border-top: 1px solid #666;
    border-right: 1px solid #666;
  }
  .home-layout .slick-slider .slick-arrow.slick-prev {
     left: 0;
  }
  .home-layout .slick-slider .slick-arrow.slick-prev::before {
    left: 3px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .home-layout .slick-slider .slick-arrow.slick-next {
     right: 0;
  }
  .home-layout .slick-slider .slick-arrow.slick-next::before {
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout .slick-slider .slick-dots,
  .home-layout .slick-slider .slick-dots > li,
  .home-layout .slick-slider .slick-dots > li > button {
    font-size: 0;
  }
  .home-layout .slick-slider .slick-dots {
    position: absolute;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
   .home-layout .slick-slider .slick-dots > li {
    margin: 0 15px;
  }
   .home-layout .slick-slider .slick-dots > li:first-child {
    margin-left: 0;
  }
   .home-layout .slick-slider .slick-dots > li:last-child {
    margin-right: 0;
  }
   .home-layout .slick-slider .slick-dots > li > button {
    overflow: hidden;
    width: 10px;
    height: 10px;
    background-color: #ccc;
    border-radius: 50%;
    text-align: left;
    text-indent: -9999em;
  }
  .home-layout .slick-slider .slick-dots > li.slick-active > button {
    background-color: #e60012;
  }
  .home-layout .home_column.slick-slider {
     padding: 0 0 35px;
  }
  .home-layout .home_column.slick-slider .slick-arrow {
    bottom: 0;
  }
  .home-layout .slick-slider .slick-dots {
    bottom: 5px;
  }
  .home-layout .home_banner.slick-slider .slick-arrow {
    top: 50%;
    margin-top: -10px;
  }
  .home-layout .home_banner.slick-slider img {
    margin: 0 auto;
  }
  /* v2 */
  .home-layout-v2 {
    margin: 50px 0 0;
  }
  .home-layout-v2 .home_inner > *:first-child {
    margin-top: 0;
  }
  .home-layout-v2 .home_column {
    margin: 20px 0 0;
  }
  .home-layout-v2 .home_column > .column_news {
    margin: 5px 0 0;
  }
  .home-layout-v2 .home_column_2 {
    margin: 20px 0 0;
    padding: 0 0 15px;
    border-bottom: 2px solid #ccc;
  }
  .home-layout-v2 .home_column_2 > .column_news {
    margin: 5px 0 0;
    padding: 0 0 0 30px;
  }
  .home-layout-v2 .home_column_2 > .column_news:first-child {
    margin-top: 0;
  }
  .home-layout-v2 .home_frame {
    padding: 10px 15px;
    background-color: #fff7f8;
    color: #000;
    font-weight: 700;
  }
  .home-layout-v2 .home_heading {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .home-layout-v2 .home_heading a:after {
    content: "";
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v2 .home_heading_2 {
    position: relative;
    padding: 0 0 0 30px;
    color: #000;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .home-layout-v2 .home_heading_2::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background-image: url(../../under-files/img/home_important_ic01.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
  }
  .home-layout-v2 .home_news .news_detail > .news_data {
    font-size: 1.1rem;
  }
  .home-layout-v2 .home_news a[class*="a-"] .news_detail > .news_title::after {
    content: "";
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    display: inline-block;
    background-image: url(../img/cmn_sprite_ic01-r2x.png);
    background-repeat: no-repeat;
    background-size: 600px 600px;
    vertical-align: middle;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .home-layout-v2 .home_news a.a-blank .news_detail > .news_title::after {
    width: 10px;
    height: 9px;
    background-position: 0px -100px;
  }
  .home-layout-v2 .home_news a.a-pdf .news_detail > .news_title::after {
    width: 14px;
    height: 14px;
    background-position: 0px -150px;
  }
  .home-layout-v2 .home_news_2 a {
    color: #000;
    text-decoration: none;
  }
  .home-layout-v2 .home_news_2 a[class*="a-"] .news_detail > .news_title::after {
    content: "";
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    display: inline-block;
    background-image: url(../img/cmn_sprite_ic01-r2x.png);
    background-repeat: no-repeat;
    background-size: 600px 600px;
    vertical-align: middle;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .home-layout-v2 .home_news_2 a.a-blank .news_detail > .news_title::after {
    width: 10px;
    height: 9px;
    background-position: 0px -100px;
  }
  .home-layout-v2 .home_news_2 a.a-pdf .news_detail > .news_title::after {
    width: 14px;
    height: 14px;
    background-position: 0px -150px;
  }
  .home-layout-v2 .home_news_2 .news_detail > .news_data {
    font-size: 1.1rem;
  }
  /* v3 */
  .home-layout-v3 {
    margin: 60px 0 0;
  }
  .home-layout-v3 .home_heading {
    font-size: 2.4rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v3 .home_navi {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 50px 0 0;
  }
  .home-layout-v3 .home_navi > li {
    width: calc((100% - 15px) / 2);
    margin: 15px 0 0 0;
  }
  .home-layout-v3 .home_navi > li:nth-child(-n+2) {
    margin-top: 0;
  }
  .home-layout-v3 .home_navi > li > .navi_link {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 14px 0 0;
    flex-direction: column;
  }
  .home-layout-v3 .home_navi > li > .navi_link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 2px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_icon {
    /*width: 40px;*/
  }
  .home-layout-v3 .home_navi > li > .navi_link > .navi_label {
    flex: 1;
    padding: 0 0 0 10px;
    line-height: 1.25;
  }
  .home-layout-v3 .home_button > li > a {
    background-color: #666;
  }
  /* v4 */
  .home-layout-v4 {
    margin: 80px 0 0;
  }
  .home-layout-v4 .home_flex_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close {
    position: absolute;
    top: 5%;
    right: 4%;
    display: block;
    text-indent: -9999em;
    width: 20px;
    height: 20px;
    z-index: 2;
    cursor: pointer;
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before,
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    position: absolute;
    top: 10px;
    right: 0;
    width: 20px;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .home-layout-v4 .home_flex_wrapper .home_flex_close::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v4 .home_flex_wrapper > .home_flex_outer {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
  }
  .home-layout-v4 .home_flex_wrapper > .home_flex_outer > .home_flex_inner {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100%;
  }
  .slick-initialized .slick-slide { 
    width: 100% !important;
  }
  .home-layout-v4 .home_heading {
    font-size: 2.4rem;
    text-align: center;
  }
  .home-layout-v4 .home_column {
    margin: 20px -15px 0;
  }
  .home-layout-v4 .home_column > [class*="column_item"] {
    position: relative;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
  }
  .home-layout-v4 .home_frame {
    position: relative;
  }
  .home-layout-v4 .home_frame_2 {
    position: relative;
    margin: 10px 0 0;
    padding: 10px 0 0;
  }
  .home-layout-v4 .home_frame_2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 13.15%;
    height: 1px;
    background-color: #6f6f6f
  }
  .home-layout-v4 .home_frame_3 {
    opacity: 0;
    background-color: #343434;
    transition: all .2s ease-out 0s;
    z-index: -1;
  }
  .home-layout-v4 .home_frame_4 {
    position: relative;
    display: block;
  }
  .home-layout-v4 .home_inner_2 {
    width: 100%;
    color: #ffffff;
    box-sizing: border-box;
    padding: 0 15px;
  }
  .home-layout-v4 .home_inner_2,
  .home-layout-v4 .home_inner_2 a {
    color: #ffffff;
  }
  .home-layout-v4 .home_title {
    font-size: 2.4rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v4 .home_title_2 {
    margin-bottom: .8em;
    font-size: 1.2rem;
    font-weight: bold;
  }
  .home-layout-v4 .home_text {
    margin: .8em 0 0;
    line-height: 1.42;
    text-align: center;
  }
  .home-layout-v4 .home_text_2 {
    font-size: 1.2rem;
  }
  .home-layout-v4 .home_image img {
    width: 100%;
  }
  .home-layout-v4 .home_link {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px 0 0;
  }
  .home-layout-v4 .home_link > li {
    margin: 0 20px 0 0;
  }
  .home-layout-v4 .home_link > li:last-child {
    margin-right: 0;
  }
  .home-layout-v4 .home_link > li > a {
    font-size: 1.2rem;
  }
  .home-layout-v4 .home_link > li > a::after {
    content: "";
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v4 .home_column > [class*="column_item"] > .home_frame > [class*="home_frame"].is-active + .home_frame_3 {
    opacity: 1;
    z-index: 2;
  }
  /* v5 */
  .home-layout-v5 {
    margin: 50px 0 0;
  }
  .home-layout-v5 .home_heading {
    font-size: 2.4rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v5 .home_column {
    margin: 30px -15px 0;
    border-top: 1px solid #cccc;
  }
  .home-layout-v5 .home_column > .column_button {
    border-bottom: 1px solid #cccc;
  }
  .home-layout-v5 .home_column_2 {
    display: flex;
    align-items: center;
  }
  .home-layout-v5 .home_column_2 > .column_image {
    width: 33.33%;
  }
  .home-layout-v5 .home_column_2 > .column_text {
    flex: 1;
    padding: 5px 29px 5px 20px;
  }
  .home-layout-v5 .home_heading_3 .heading_title {
    font-weight: 700;
  }
  .home-layout-v5 .home_heading_3 .heading_date {
    font-size: 1.1rem;
  }
  .home-layout-v5 .home_link {
    position: relative;
    display: block;
    text-decoration: none;
  }
  .home-layout-v5 .home_link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    width: 10px;
    height: 10px;
    margin-top: -7px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v5 .home_text_2 {
    display: flex;
    flex-wrap: wrap;
  }
  .home-layout-v5 .home_text_2 > dl {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    margin: 10px 0 0;
    line-height: 1.1;
  }
  .home-layout-v5 .home_text_2 > dl:first-child {
    margin-right: 20px;
  }
  .home-layout-v5 .home_text_2 > dl > dt {
    font-size: 1.3rem;
  }
  .home-layout-v5 .home_text_2 > dl > dt::after {
    content: "：";
  }
  .home-layout-v5 .home_text_2 > dl.type-recent > dd {
    font-size: 2.4rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd {
    font-size: 1.1rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd > span {
    color: #e60012;
    font-size: 1.6rem;
  }
  .home-layout-v5 .home_text_2 > dl.type-change > dd > span > em {
    font-size: 2.4rem;
    font-style: normal;
  }
  .home-layout-v5 .stockprice_image {
    margin-top: 1.5em;
  }
  .home-layout-v5 .home_link_2 {
    margin-top: 10px;
  }
  .home-layout-v5 .home_link_2 > li {
    font-size: 1.3rem;
  }
  /* v6 */
  .home-layout-v6 {
    margin: 50px -15px 0;
  }
  .home-layout-v6 .home_inner {
    padding: 40px 15px 120px;
    background-color: #f7f7fa;
  }
  .home-layout-v6 .home_heading {
    font-size: 2.4rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v6 .home_tab {
    margin: 25px 0 0;
  }
  .home-layout-v6 .home_tab .tab_list {
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
  .home-layout-v6 .home_tab .tab_list > li {
    width: calc((100% - 15px * 2) / 3);
  }
  .home-layout-v6 .home_tab .tab_list > li + li {
    margin-left: 15px;
  }
  .home-layout-v6 .home_tab .tab_list > li > a {
    display: block;
    padding: 0 0 10px;
    border-bottom: 2px solid #666666;
    color: #333;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout-v6 .home_tab .tab_list > li.is-current > a {
    color: #e60012;
    font-weight: 700;
    border-bottom-color: #e60012;
  }
  .home-layout-v6 .home_column {
    margin: 15px 0 0;
  }
  .home-layout-v6 .home_column > .column_item {
    margin: 10px 0 0;
  }
  .home-layout-v6 .home_column > .column_item:first-child {
    margin-top: 0;
  }
  .home-layout-v6 .home_column_2 {
    display: flex;
  }
  .home-layout-v6 .home_column_2 > .column_image .home_image img {
    max-width: 95px;
  }
  .home-layout-v6 .home_column_2 > .column_text {
    -webkit-flex: 1;
    flex: 1;
    padding: 0 15px;
  }
  .home-layout-v6 .home_frame {
    display: block;
    padding: 10px;
    background-color: #fff;
  }
  .home-layout-v6 a.home_frame {
    position: relative;
    color: #333;
    text-decoration: none;
  }
  .home-layout-v6 a.home_frame::before {
    content: "";
    position: absolute;
    right: 8px;
    bottom: 8px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .home-layout-v6 a.home_frame[class*="a-"]::before {
    border: none;
    background-image: url(../img/cmn_sprite_ic01-r2x.png);
    background-repeat: no-repeat;
    background-size: 600px 600px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .home-layout-v6 a.home_frame.a-blank::before {
    width: 10px;
    height: 9px;
    background-position: 0px -100px;
  }
  .home-layout-v6 a.home_frame.a-pdf::before {
    width: 14px;
    height: 14px;
    background-position: 0px -150px;
  }
  .home-layout-v6 .home_text {
    font-size: 1.0rem;
  }
  .home-layout-v6 .home_text_2 {
    margin: 2px 0 0;
    line-height: 1.42;
  }
  .home-layout-v6 .home_button {
    margin-top: 15px;
  }
  .home-layout-v6 .home_button > li > a {
    background-color: #666;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * SP Media Queries
====================================================== */
@media only screen and (min-width: 320px) and (max-width: 767px) {
}
@media only screen and (max-width: 736px) {
}
@media only screen and (max-width: 667px) {
}
@media only screen and (max-width: 640px) {
}
@media only screen and (max-width: 568px) {
}
@media only screen and (max-width: 480px) {
}
@media only screen and (max-width: 414px) {
}
@media only screen and (max-width: 375px) {
}
@media only screen and (max-width: 360px) {
  .home-layout-v4 .home_title_2 {
    margin-bottom: .5em;
    font-size: 1.0rem;
  }
  .home-layout-v4 .home_text_2 {
    font-size: 1.0rem;
  }
  .home-layout-v4 .home_link > li > a {
    font-size: 1.0rem;
  }
}
@media only screen and (max-width: 320px) {
}


/* ======================================================
 * Print
====================================================== */
@media print {
  .home-layout-v3 .home_navi > li {
    width: calc((100% - 20px * 2) / 3) !important;
    margin: 20px 0 0 20px !important;
  }
  .home-layout-v3 .home_navi > li:nth-child(-n+3) {
    margin-top: 0 !important;
  }
  .home-layout-v3 .home_navi > li:nth-child(3n+1) {
    margin-left: 0 !important;
  }
}